<?php declare(strict_types=1);


namespace App\Model\Entity;

use Swoft\Db\Annotation\Mapping\Column;
use Swoft\Db\Annotation\Mapping\Entity;
use Swoft\Db\Annotation\Mapping\Id;
use Swoft\Db\Eloquent\Model;


/**
 * 
 * Class LoginLog
 *
 * @since 2.0
 *
 * @Entity(table="login_log")
 */
class LoginLog extends Model
{
    /**
     * 
     * @Id()
     * @Column()
     *
     * @var int
     */
    private $id;

    /**
     * 
     *
     * @Column(name="member_id", prop="memberId")
     *
     * @var int
     */
    private $memberId;

    /**
     * 用户登录设备1:android,2:ios,3:web
     *
     * @Column()
     *
     * @var int
     */
    private $equipment;

    /**
     * 
     *
     * @Column(name="equipment_number", prop="equipmentNumber")
     *
     * @var string
     */
    private $equipmentNumber;

    /**
     * 用户登录时坐标
     *
     * @Column()
     *
     * @var string|null
     */
    private $coordinate;

    /**
     * 
     *
     * @Column(name="login_ip", prop="loginIp")
     *
     * @var string
     */
    private $loginIp;

    /**
     * 请求用户app版本
     *
     * @Column()
     *
     * @var string|null
     */
    private $version;

    /**
     * 
     *
     * @Column(name="login_time", prop="loginTime")
     *
     * @var int|null
     */
    private $loginTime;


    /**
     * @param int $id
     *
     * @return void
     */
    public function setId(int $id): void
    {
        $this->id = $id;
    }

    /**
     * @param int $memberId
     *
     * @return void
     */
    public function setMemberId(int $memberId): void
    {
        $this->memberId = $memberId;
    }

    /**
     * @param int $equipment
     *
     * @return void
     */
    public function setEquipment(int $equipment): void
    {
        $this->equipment = $equipment;
    }

    /**
     * @param string $equipmentNumber
     *
     * @return void
     */
    public function setEquipmentNumber(string $equipmentNumber): void
    {
        $this->equipmentNumber = $equipmentNumber;
    }

    /**
     * @param string|null $coordinate
     *
     * @return void
     */
    public function setCoordinate(?string $coordinate): void
    {
        $this->coordinate = $coordinate;
    }

    /**
     * @param string $loginIp
     *
     * @return void
     */
    public function setLoginIp(string $loginIp): void
    {
        $this->loginIp = $loginIp;
    }

    /**
     * @param string|null $version
     *
     * @return void
     */
    public function setVersion(?string $version): void
    {
        $this->version = $version;
    }

    /**
     * @param int|null $loginTime
     *
     * @return void
     */
    public function setLoginTime(?int $loginTime): void
    {
        $this->loginTime = $loginTime;
    }

    /**
     * @return int
     */
    public function getId(): ?int
    {
        return $this->id;
    }

    /**
     * @return int
     */
    public function getMemberId(): ?int
    {
        return $this->memberId;
    }

    /**
     * @return int
     */
    public function getEquipment(): ?int
    {
        return $this->equipment;
    }

    /**
     * @return string
     */
    public function getEquipmentNumber(): ?string
    {
        return $this->equipmentNumber;
    }

    /**
     * @return string|null
     */
    public function getCoordinate(): ?string
    {
        return $this->coordinate;
    }

    /**
     * @return string
     */
    public function getLoginIp(): ?string
    {
        return $this->loginIp;
    }

    /**
     * @return string|null
     */
    public function getVersion(): ?string
    {
        return $this->version;
    }

    /**
     * @return int|null
     */
    public function getLoginTime(): ?int
    {
        return $this->loginTime;
    }

}
